Rijen met een vingerafdruk
Home

Rijen met een vingerafdruk

Rijen met een vingerafdruk

Een vingerafdruk is de afdruk van het lijnenpatroon op een vingertop. Het lijnenspel op iedere vinger is uniek, en wordt daarom ingezet als identificatiemiddel. Rijen in een tabel hebben ook een identificatiemiddel nodig.

Probleem

binaire-code-en-vingerafdruk

Belgen worden administratief op een unieke manier bepaald door hun rijksregisternummer. Als je een belastingsbrief invult moet je niet alleen je naam en voornaam invullen maar ook je rijksregisternummer. Waarom is dat? Welnu, naam en voornaam volstaan niet om een belg op unieke manier aan te wijzen. Het komt voor dat verschillende Belgen dezelfde naam en voornaam hebben. En niemand wil de belastingen van een ander betalen.

Had men de naam, voornaam en adres dan niet kunnen gebruiken? Juist, maar wat als er familieleden met dezelfde voornaam en naam op hetzelfde adres wonen. Daarom heeft men beslist aan elke Belg een verschillend en dus uniek nummer toe te kennen.

Als je een rij niet op een unieke manier kan identificeren is je database niet integer en waardeloos.

Oplossing

Hoe kan je rijen in een tabel identificeren? We vertrekken van de volgende tabel:

Voornaam

Familienaam

Titel

Jef

Nys

De jacht op een voetbal

Jef

Nys

De zingende aap

Jef

Nys

De koningin van Onderland

Jef

Nys

Purpere pillen

Jef

Nys

De muzikale Bella

Jef

Nys

Het hemelhuis

Jef

Nys

De zwarte Bomma

Jef

Nys

De ooievaar van Begonia

Jef

Nys

De schildpaddenschat

Jef

Nys

De straalvogel

De voornaam of de familienaam kunnen we niet als vingerafdruk van een rij gebruiken want alle tien rijden hebben dezelfde naam en voornaam. Als we de titel van het album pakken hebben we wel een vingerafdruk. Want geen enkele rij heeft een zelfde titel.

Wat doen we met de volgende tabel?

Voornaam

Familienaam

Titel

Jef

Nys

De jacht op een voetbal

Jean-Paul

Sartre

Het verdriet van Bella

Greet

Bauweleers

Het verdriet van Bella

We kunnen de titel niet meer als vingerafdruk gebruiken, want zowel Greet als Jean-Paul hebben een boek met dezelfde titel.

Maar nu kunnen we wel de naam als vingerafdruk gebruiken.

Ok. Wat met de volgende tabel?

Voornaam

Familienaam

Titel

Jef

Nys

De jacht op een voetbal

Jean-Paul

Sartre

Het verdriet van Bella

Greet

Bauweleers

Het verdriet van Bella

Jef

Nys

De straalvogel

Nu zitten we weer vast. Er staan twee albums van dezelfde auteur in. We kunnen de naam niet meer als vingerafdruk gebruiken. Nu hebben we alle drie de kolommen nodig om een vingerafdruk te maken.

SQL puristen gaan meestal op zoek gaan naar één of meerdere kolommen die een rij in een tabel op unieke manier identificeren. In de praktijk gaan we ons met de tijdrovende taak niet bezig houden en de computer de identificatie laten doen. We voegen aan elke tabel een kolom toe met de naam Id en vragen aan de computer daarin een uniek nummer te zetten. Het is een goede praktijk om die kolom in alle tabellen dezelfde naam te geven, namelijk Id. Dat vergemakkelijkt het beheer van de database.

Id

Voornaam

Familienaam

Titel

1

Jef

Nys

De jacht op een voetbal

2

Jean-Paul

Sartre

Het verdriet van Bella

3

Greet

Bauweleers

Het verdriet van Bella

4

Jef

Nys

De straalvogel

Als er een nieuwe rij wordt toegevoegd wordt in de Id kolom automatisch de waarde 5 gezet. We hoeven ons geen zorgen meer te maken over de vingerafdruk van de rij. Wat er ook in de andere kolommen staat, we zijn er altijd zeker van door de Id, de rij op unieke manier te identificeren valt.

JI
2018-04-13 11:20:53